// NormalClassToTemplateClass.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

class BaseClass
{
protected:
	int m_basevalue;
public:
	int getValue(){return m_basevalue;};
	void setValue(int val){m_basevalue = val;};
	void addValue(int addvalue);
};

void BaseClass::addValue(int addvalue)
{	
	m_basevalue += addvalue;
}

template <class PARATYPE>
class DrivedClass:public BaseClass
{
protected:
	PARATYPE m_drivedvalue;
public:
	PARATYPE getDrivedValue(){return m_drivedvalue;};
	void setDrivedValue(PARATYPE val){m_drivedvalue = val;};
	void addDrivedValue(PARATYPE addvalue);
};

template <class PARATYPE>
void DrivedClass<PARATYPE>::addDrivedValue(PARATYPE addvalue)
{	
	m_drivedvalue += addvalue;
}


int main(int argc, char* argv[])
{
	BaseClass a;
	
	DrivedClass<int> b;

	return 0;
}

